Arquitectura de Plataforma CI/CD y GitOps
Estado: CONFIDENCIAL / USO INTERNO Área: Arquitectura de TI - DevOps & Infraestructura Frameworks de Referencia: TOGAF 10, MoProSoft Nivel 4, C4 Model, GitOps Practitioner Standards
1. Objetivo de la Arquitectura
El objetivo primordial de esta arquitectura es establecer una plataforma de Integración Continua (CI) y Entrega Continua (CD) estandarizada, resiliente y altamente segura que sirva como habilitadora tecnológica para toda la organización.
Mediante la adopción de principios de GitOps (Pull-Based), DevSecOps y Continuous Delivery, buscamos mitigar los riesgos operativos, eliminar el factor de error humano en los despliegues, asegurar la conformidad reglamentaria y acelerar el Time-to-Market mediante un flujo continuo, transparente y totalmente auditable.
2. Arquitectura General e Interacciones
La plataforma orquesta múltiples herramientas líderes en la industria para conformar un ecosistema desacoplado pero altamente sincronizado. A continuación, se detalla el flujo lógico de interacción entre los sistemas:
Descripción de los Componentes
- GitHub Enterprise: Repositorio central e inmutable. Actúa como la Única Fuente de Verdad (SSOT) para aplicaciones (código base) y configuraciones (manifiestos).
- Jenkins: Ejecuta la compilación de código, pruebas automáticas, auditoría estática y el empaquetado de contenedores. Nota crítica: Jenkins carece de credenciales e interactividad directa con los clústeres de Kubernetes productivos.
- SonarQube: Evalúa la calidad, mantenibilidad y seguridad del código estático mediante Quality Gates obligatorios.
- Nexus Repository / Docker Registry: Repositorios de almacenamiento para paquetes (JAR, NPM) e imágenes inmutables de Docker (con firmas digitales).
- Argo CD: Controla la reconciliación continua. Vive dentro de Kubernetes y jala los cambios desde Git de forma síncrona.
- WSO2 API Manager: Expone, protege y gobierna el ciclo de vida de las APIs desplegadas en el clúster.